package com.example.airole.business.entity;

import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.AllArgsConstructor;
import lombok.Builder;

import java.time.LocalDateTime;

/**
 * 对话实体（不需要用户登录）
 */
@Data
@NoArgsConstructor
@AllArgsConstructor
@Builder
public class Conversation {
    
    /**
     * 对话ID
     */
    private Long id;
    
    /**
     * 对话UUID
     */
    private String conversationId;
    
    /**
     * 会话ID（浏览器会话标识）
     */
    private String sessionId;
    
    /**
     * 角色ID
     */
    private String roleId;
    
    /**
     * 对话标题
     */
    private String title;
    
    /**
     * 对话状态
     */
    private ConversationStatus status;
    
    /**
     * 消息数量
     */
    private Integer messageCount;
    
    /**
     * 最后消息时间
     */
    private LocalDateTime lastMessageTime;
    
    /**
     * 创建时间
     */
    private LocalDateTime createTime;
    
    /**
     * 更新时间
     */
    private LocalDateTime updateTime;
    
    /**
     * 对话状态枚举
     */
    public enum ConversationStatus {
        ACTIVE, ARCHIVED, DELETED
    }
}
